package smallfrench.moteur.biblio.igu;

import java.awt.BorderLayout;
import java.util.HashMap;

import smallfrench.moteur.biblio.AClasse;
import smallfrench.moteur.biblio.RChaine;
import smallfrench.moteur.biblio.RPaquet;
import smallfrench.moteur.interp.RObjet;

public final class IGU {

	private final static HashMap<String, RObjet> map;
	public final static RPaquet IGU;

	private IGU() {
	}

	static {
		map = new HashMap<String, RObjet>();

		ajouterMap(BarreMenu.CLASSE);
		ajouterMap(Boite.CLASSE);
		ajouterMap(BoutonAbstrait.CLASSE);
		ajouterMap(Bouton.CLASSE);
		ajouterMap(ChampDeTexte.CLASSE);
		ajouterMap(Composant.CLASSE);
		ajouterMap(ComposantTexte.CLASSE);
		ajouterMap(Courbe.CLASSE);
		ajouterMap(Dimension.CLASSE);
		ajouterMap(ElementMenu.CLASSE);
		ajouterMap(Etiquette.CLASSE);
		ajouterMap(EvenementSouris.CLASSE);
		ajouterMap(Fenetre.CLASSE);
		ajouterMap(Graphique.CLASSE);

		map.put("Est", new RChaine(BorderLayout.EAST));
		map.put("Ouest", new RChaine(BorderLayout.WEST));
		map.put("Nord", new RChaine(BorderLayout.NORTH));
		map.put("Sud", new RChaine(BorderLayout.SOUTH));
		map.put("Centre", new RChaine(BorderLayout.CENTER));

		IGU = new RPaquet(map);
	}

	private static void ajouterMap(AClasse classe) {
		map.put(classe.toString(), classe);
	}

}
